package com.Blog.www.service;

import com.Blog.www.po.BlogComment;
import com.Blog.www.po.CommentName;
import com.Blog.www.po.PageBean;

import java.util.List;

/**
 * 博客评论操作类
 *
 * @author 君未洋
 */
public interface CommentService {


    /**
     * 添加用户评论方法
     *
     * @param bid     博客id
     * @param uid     用户id
     * @param comment 评论内容
     * @return 返回是否添加成功
     */
    boolean addComment(String bid, String uid, String comment);

    /**
     * 获取该博客名下的所有评论
     *
     * @param id    博客id
     * @param prior 回复前驱
     * @return 返回评论封装的集合
     */
    List<BlogComment> getCommentList(int id, int prior);


    /**
     * 获取博客所有的博客评论
     *
     * @param currentPage 页数
     * @param rows        每页展示的条数
     * @return 返回获取的集合
     */
    PageBean<CommentName> getCommentList(String currentPage, String rows);


    /**
     * 用户评论删除方法
     *
     * @param cid 评论的id
     * @return 删除成功就返回删除成功
     */
    boolean deleteComment(String cid);


    /**
     * 通过评论id获取评论类
     *
     * @param id 评论的id
     * @return 返回评论封装对象
     */
    BlogComment getComment(int id);

    /**
     * 博客评论回复用
     *
     * @param bid     博客id
     * @param uid     用户id
     * @param cid     评论id
     * @param comment 回复内容
     * @return 返回操作成功与否
     */
    boolean addReply(String bid, String uid, String cid, String comment);


    /**
     * 删除对应的id集合的回复
     *
     * @param commentIds 评论id集合
     * @return 返回操作成功与否
     */
    boolean deleteList(String[] commentIds);
}
